A typical enterprise network, which can include data centers, contains myriad network elements, including hosts, load balancers, routers, switches, etc. The network connecting the network elements provides secure user access to various services and an infrastructure for deployment, interconnection, and aggregation of shared resource as required, including applications, hosts, appliances, and storage. Improving operational efficiency and optimizing utilization of resources in such networks are some of the challenges facing network operators. Network operators want a resilient infrastructure that consistently supports diverse applications and services and protects the applications and services against disruptions. The application workloads deployed in a typical datacenter can have varying level of latency and bandwidth requirements, which have to be supported by the network infrastructure. A properly planned and operating network provides application and data integrity and optimizes application availability and performance.